QTAwk Update Notice QTAwk has been updated. This notice relates the upgrades made to QTAwk and consists of the following sections: 1: Total Package 2: New QTAwk Copyright and Registration Notice 3: Upgrade History Section 1: ===== QTAwk Package =========================================== Total QTAwk package to registered users consists of the following files: 1) qtawk.exe ==> QTAwk executable with 8086/88 processor and up with/without numeric coprocessor 2) qtawkf.exe ==> QTAwk executable with 8086/88 processor and up with numeric coprocessor 3) qtawk2.exe ==> QTAwk executable with 80286 processor and up with/without numeric coprocessor 4) qtawk2f.exe ==> QTAwk executable with 80286 processor and up with numeric coprocessor 5) qtawkn.exe ==> QTAwk database for Norton Online Guides Self-extracting compressed file 6) qtawku.exe ==> Archive of QTAwk utilities Self-extracting compressed file 7) qtawkd.exe ==> QTAwk Documentation w/QTAwk utility to display Self-extracting compressed file 8) qtgrep.exe ==> Documentation for shareware program Self-extracting compressed file 9) xb.exe ==> Documentation for shareware program Self-extracting compressed file 10) diffdoc.fmt ==> Differences between QTAwk and AWK 11) license.fmt ==> QTAwk registration notice 12) order.frm ==> QTAwk registration form 12) qtawk.man ==> QTAwk Unix(tm) style manual pages 13) read.me ==> This file 14) prod_lis.t ==> Other shareware products available The self-extracting files contain compressed forms of the following files: ------ Self-extracting File List ------ QTAWKU.EXE - QTAwk Utilities Archive Name Original Packed Ratio Date Time Attr Type CRC -------------- -------- -------- ------ -------- -------- ---- ----- ---- ! 806 345 42.8% 90-11-10 20:58:26 ---w -lh1- F346 ADDCOMMA.EXP 591 359 60.7% 90-01-07 17:13:44 ---w -lh1- F87A ALARM.EXP 4071 1607 39.5% 90-07-25 21:29:46 ---w -lh1- 6929 ANSICLST.EXP 7227 1730 23.9% 90-04-30 20:46:26 ---w -lh1- 677E ANSICSTD.EXP 3619 1564 43.2% 90-04-23 21:27:34 ---w -lh1- 2FFC ANSIRSV.EXP 1973 612 31.0% 89-04-28 20:55:58 ---w -lh1- FDA2 ANSIRSVG.EXP 1514 605 40.0% 89-04-28 20:53:16 ---w -lh1- DD7E APPTADD.EXP 4813 1918 39.9% 90-07-25 21:30:46 ---w -lh1- B50C APPTDIS.EXP 4374 1760 40.2% 90-07-25 21:31:18 ---w -lh1- 6E01 CALCIN.EXP 9027 3287 36.4% 90-09-27 20:12:24 ---w -lh1- 86BC CALCINNA.EXP 8095 3133 38.7% 90-09-27 20:14:16 ---w -lh1- 9C76 CALCRP.EXP 20781 6324 30.4% 90-11-09 21:22:08 ---w -lh1- 24EB CALCRPNA.EXP 19406 6095 31.4% 90-11-09 21:22:04 ---w -lh1- D929 CALEXPT.EXP 5198 1869 36.0% 90-04-30 21:03:30 ---w -lh1- 6D53 CALNDPRT.EXP 3222 1258 39.0% 90-04-23 21:29:44 ---w -lh1- 37FB CDCL.EXP 6215 1786 28.7% 90-04-30 21:03:40 ---w -lh1- 2F56 CLICHE.EXP 298 201 67.4% 89-03-15 17:59:48 ---w -lh1- 1964 COMPAT.EXP 3547 1574 44.4% 90-05-02 20:01:02 ---w -lh1- 615C COMPRESS.EXP 307 190 61.9% 90-04-23 21:30:32 ---w -lh1- E3B8 CRV.DAT 264 174 65.9% 90-01-05 21:16:18 ---w -lh1- B5C6 CURVEFIT.EXP 11800 3714 31.5% 90-04-30 21:03:52 ---w -lh1- E5B9 DATE.EXP 1160 620 53.4% 90-04-23 21:30:56 ---w -lh1- 2474 DIFFDOC.FMT 13966 5400 38.7% 90-10-22 20:34:12 ---w -lh1- 7917 DISPLAY.BAT 51 51 100.0% 90-10-24 20:21:04 ---w -lh0- FFBD DISPLAY.DOC 28409 8821 31.1% 90-11-11 21:22:20 a--w -lh1- 4641 DISPLAYN.BAT 62 62 100.0% 90-11-11 16:58:56 ---w -lh0- C207 FILENAME.EXP 1055 568 53.8% 90-04-23 21:31:12 ---w -lh1- 8AF4 FIN.EXP 28186 10128 35.9% 90-05-16 15:26:42 ---w -lh1- A41D FIN.INP 225 129 57.3% 90-03-06 16:56:06 ---w -lh1- 2069 FINNA.EXP 26779 9850 36.8% 90-05-16 15:26:30 ---w -lh1- E9FA FMTDOC.EXP 27754 9253 33.3% 90-04-29 20:20:30 ---w -lh1- 2EB9 FMTDOC2P.EXP 28123 9377 33.3% 90-04-29 20:20:34 ---w -lh1- DF5E GEODH.EXP 4794 1700 35.5% 90-04-23 21:32:30 ---w -lh1- DB07 GETDIR.EXP 3987 1709 42.9% 90-07-25 9:02:32 ---w -lh1- 1856 GRAPH.EXP 3387 1345 39.7% 90-04-23 21:32:52 ---w -lh1- 03E2 HISTOGRM.EXP 763 446 58.5% 90-04-23 21:33:24 ---w -lh1- 048D HOLIDAY.EXP 4971 1633 32.9% 90-04-23 21:33:52 ---w -lh1- AD97 LICENSE.FMT 8095 3387 41.8% 90-11-10 16:42:26 a--w -lh1- 00ED LINENUM.EXP 22 22 100.0% 89-03-07 20:47:44 ---w -lh0- 2723 MORE.EXP 19624 7112 36.2% 90-10-09 21:25:20 ---w -lh1- C779 MOREQ.BAT 64 62 96.9% 90-08-05 19:55:54 ---w -lh1- FF4A PRDN.EXP 1141 256 22.4% 90-04-23 21:34:52 ---w -lh1- 572E READ.ME 14911 5846 39.2% 90-11-11 15:29:16 a--w -lh1- 1EC6 ROMN.EXP 2137 746 34.9% 90-04-23 21:35:00 ---w -lh1- EC84 SCREEN.EXP 4460 1352 30.3% 90-04-23 21:35:32 ---w -lh1- CDDB SINCOS.EXP 2710 1143 42.2% 90-02-10 19:47:22 ---w -lh1- D70F SLIKE.EXP 3993 1740 43.6% 90-04-23 21:35:52 ---w -lh1- 4054 SOUNDIX.EXP 3418 1546 45.2% 90-03-31 18:58:14 ---w -lh1- 3433 SOUNDX4.EXP 2926 1167 39.9% 90-04-23 21:36:22 ---w -lh1- 8BE4 SSFUNCS.EXP 14208 1865 13.1% 90-04-29 21:50:42 ---w -lh1- 2D33 STATE.EXP 706 331 46.9% 89-11-25 18:23:44 ---w -lh1- A7E6 STATES.DTA 3575 1836 51.4% 89-10-29 19:31:20 ---w -lh1- 5637 TABLE.EXP 809 451 55.7% 90-02-10 19:56:58 ---w -lh1- C632 TOC.EXP 1268 667 52.6% 90-04-23 21:37:08 ---w -lh1- D1AC WORDFREQ.EXP 962 565 58.7% 90-02-10 20:25:16 ---w -lh1- 53CA -------------- -------- -------- ------ -------- -------- 55 files 375849 131291 34.9% 90-11-11 21:22:54 QTAWKN.EXE - QTAwk Database for Norton Online Guides Name Original Packed Ratio Date Time Attr Type CRC -------------- -------- -------- ------ -------- -------- ---- ----- ---- ! 828 363 43.8% 90-11-10 21:07:44 ---w -lh1- 8278 DIFFDOC.FMT 13966 5400 38.7% 90-10-22 20:34:12 ---w -lh1- 7917 LICENSE.FMT 8095 3387 41.8% 90-11-10 16:42:26 ---w -lh1- 00ED ORDER.FRM 12380 4747 38.3% 90-11-10 16:58:40 ---w -lh1- A9B4 QTAWK.NG 121970 43839 35.9% 90-10-10 20:55:56 ---w -lh1- 7D69 READ.ME 14911 5846 39.2% 90-11-11 15:29:16 a--w -lh1- 1EC6 -------------- -------- -------- ------ -------- -------- 6 files 172150 63582 36.9% 90-11-11 15:30:40 QTAWKD.EXE - QTAwk Documentation Name Original Packed Ratio Date Time Attr Type CRC -------------- -------- -------- ------ -------- -------- ---- ----- ---- ! 1194 542 45.4% 90-11-10 21:30:20 a--w -lh1- A56E DIFFDOC.FMT 13409 5382 40.1% 90-11-04 16:46:34 ---w -lh1- F951 DISPLAY.BAT 51 51 100.0% 90-10-24 20:21:04 ---w -lh0- FFBD DISPLAY.DOC 28409 8821 31.1% 90-11-11 21:22:20 a--w -lh1- 4641 DISPLAYN.BAT 62 62 100.0% 90-11-11 16:58:56 ---w -lh0- C207 LICENSE.FMT 8095 3387 41.8% 90-11-10 16:42:26 a--w -lh1- 00ED ORDER.FRM 12380 4747 38.3% 90-11-10 16:58:40 a--w -lh1- A9B4 PROD_LIS.T 2077 1006 48.4% 90-07-22 18:46:12 ---w -lh1- A98F QTAWK.DOC 344917 93948 27.2% 90-11-10 20:23:48 ---w -lh1- 47A9 QTAWK.MAN 37508 14864 39.6% 90-11-04 16:44:06 ---w -lh1- F152 QTGREP.DOC 130828 40974 31.3% 90-11-04 16:50:44 ---w -lh1- 9D30 READ.ME 14911 5846 39.2% 90-11-11 15:29:16 a--w -lh1- 1EC6 XB.DOC 42294 11985 28.3% 90-07-09 20:54:28 ---w -lh1- 9672 -------------- -------- -------- ------ -------- -------- 13 files 636135 191615 30.1% 90-11-11 21:22:36 ------ File Description -------- Executables: QTAWK .EXE with or without 80x87, 8086/8088/80286... (80x87 used if present) QTAWK2 .EXE with or without 80x87, 80286... (80x87 used if present) QTAWK2F .EXE with 80x87, 80286... QTAWKF .EXE with 80x87, 8086/8088/80286... Utilities: ADDCOMMA.EXP utility to add commas to numbers ALARM .EXP utility to set TSR alarm from appointment list ANSICLST.EXP ANSICSTD.EXP ANSIRSV .EXP ANSIRSVG.EXP APPTADD .EXP utility to add appointments to data file for alarm/apptdis APPTDIS .EXP utility to display todays appointments from alarm data file CALCIN .EXP infix calculator (assumes ANSI.SYS) CALCINNA.EXP infix calculator (does not assume ANSI.SYS) CALCRP .EXP reverse polish calculator (assumes ANSI.SYS) CALCRPNA.EXP reverse polish calculator (does not assume ANSI.SYS) CALEXPT .EXP calender calculation utility CALNDPRT.EXP calender calculation utility CDCL .EXP translate C declarations to English CLICHE .EXP cliche creator COMPAT .EXP test compatability of utility to QTawk COMPRESS.EXP compress successive blank line in text files CURVEFIT.EXP fit data to one or best of 9 curves DATE .EXP date computation utility FILENAME.EXP split path and filename.ext FIN .EXP financial calculator (assumes ANSI.SYS) FINNA .EXP financial calculator (does not assume ANSI.SYS) FMTDOC .EXP document formattor FMTDOC2P.EXP document formattor - 2 pass GEODH .EXP utility to compare iterative and exact solutions for geodetic Lat. GETDIR .EXP sample utility to get contents of directory GRAPH .EXP graphing utility HISTOGRM.EXP histogram utility HOLIDAY .EXP compute holidays LINENUM .EXP add line numbers to file MORE .EXP display files one screen at a time/search for expressions PRDN .EXP print pre-defined regular expressions ROMN .EXP convert arabic number to roman numeral SCREEN .EXP functions to utilize ANSI.SYS for screen/cursor manipulation SINCOS .EXP graph sine/cosine functions SLIKE .EXP find words which sound like a specified set of words SOUNDIX .EXP algorithm for "slike" SOUNDX4 .EXP another algorithm for "slike" SSFUNCS .EXP standard scoring functions for trade studies STATE .EXP state demostration utility TABLE .EXP table creation utility TOC .EXP line oriented Table of Contents creation utility WORDFREQ.EXP count words MOREQ .bat batch file driver for more.exp Data: FIN .INP sample input file for financial calculator CRV .DAT input data for curvefit.exp STATES .DTA input data file for state.exp Documentation: READ .ME this file QTAWK .MAN QTAwk Unix(tm) style manual pages QTAWK .NG QTawk database for Norton Online Guides QTAWK .DOC QTAwk Documentation LICENSE .FMT QTAwk Registration Notice ORDER .FRM QTAwk order form DISPLAY .DOC QTAwk utility to display QTAwk documentation files QTAwk.doc and QTAwk.man. ANSI.SYS display driver must be installed to utilize phrase and search highlighting DISPLAY .BAT Batch file to run display.doc utility - assumes ANSI.SYS installed. Use displayn.bat if ANSI.SYS display driver not installed. Adaptation of more.exp utility DISPLAYN.BAT Batch file to run display.doc utility - ANSI.SYS not installed. Use display.bat if ANSI.SYS display driver installed. Adaptation of more.exp utility DIFFDOC .FMT QTAwk Differences from "Awk Programming Language" by: Alfred V. Aho Brian W. Kernighan Peter J. Weinberger Section 2: ===== QTAwk Copyright ========================================= QTAwk License Version 4.20, 10/10/90 Pearl Boldt Quik Trim 13012 Birdale Lane Darnestown, MD 20878 CompuServe ID: 72040.434 Copyright 1988 - 1990, Pearl Boldt. All Rights Reserved. This file, LICENCE.FRM, contains the QTAwk license agreement and registration information. Registration Information ------------------------ QTAwk is a copyrighted program protected by both U.S. and international copyright law. If you obtained QTAwk from a shareware disk vendor, an on-line computer service or bulletin board, a friend or colleague, or another similar source, you have an unregistered (trial) copy. You may use this copy without charge for a limited period of time under the terms of the QTAwk license agreement (below). After this time is up, you must register and pay for QTAwk to continue using it. This method of distribution is known as shareware. It allows you to determine whether QTAwk meets your needs before you pay for it. The registration fee for a single copy of QTAwk is $50. Payment of this fee entitles you to: * A disk with the latest version of QTAwk, registered to you. * One copy of the printed QTAwk manual. * An upgrade to the next release of QTAwk. * Technical support via electronic mail or telephone. If you prefer, you may register for $35 and receive only the disk and notices of future upgrades. Network, site, and corporate licenses are also available; contact the copyright holder for more information. Upgrade Information ------------------- If you purchased QTAwk version 4.02 or later at the $50 rate, or a site license for version 4.02 or later, you are entitled to a free upgrade to version 4.20. If you are not entitled to a free upgrade, or you wish to order a version 4.20 manual use the order form in the file ORDER.FMR. QTAwk License Agreement ---------------------- (1) Copyright: The QTAwk program and all other programs and documentation distributed or shipped with it are Copyright Pearl Boldt 1988 - 1990 and are protected by U.S. and International Copyright law. In the rest of this document, this collection of programs is referred to simply as "QTAwk". You are granted a license to use your copy of QTAwk only under the terms and conditions specified in this license agreement. (2) Definitions: QTAwk is distributed in two forms. A "registered" copy of QTAwk is a copy distributed on diskette, purchased from the copyright holder. A "shareware" copy of QTAwk is a copy distributed on diskette or via an electronic bulletin board, on-line service, or other electronic means, obtained from a shareware disk vendor, or obtained from another individual. (3) Shareware Copies: Shareware copies of QTAwk are distributed to allow you to try the program before you pay for it. They are Copyright 1988 - 1990, Pearl Boldt and do not constitute "free" or "public domain" software. You may use a shareware copy of QTAwk at no charge for a trial period of up to 21 days. If you wish to continue using QTAwk after that period, you must purchase a registered copy. If you choose not to purchase a registered copy, you must stop using QTAwk, though you may keep copies and pass them along to others. You may give QTAwk to others for noncommercial use use IF: => All Files And Documentation Accompany The Programs. => The Files Are Not Modified In Any Way. (4) Registered Copies: Registered copies of QTAwk are distributed to those who have purchased them from the copyright holder. (5) Use of One Copy on Two Computers: If you have a registered copy of QTAwk which is licensed for use on a single computer, you may install it on two computers used at two different locations (for example, at work and at home), provided there is no possibility that the two computers will be in use at the same time, and provided that you yourself have purchased QTAwk, or if QTAwk was purchased by your employer, that you have your employer's explicit permission to install QTAwk on two systems as described in this paragraph. The right to install one copy of QTAwk on two computers is limited to copies originally licensed for use on a single computer, and may not be used to expand the number of systems covered under a multi-system license. (6) Use of QTAwk on Networks or Multiple Systems: You may install your registered copy of QTAwk on a computer attached to a network, or remove it from one computer and install it on a different one, provided there is no possibility that your copy will be used by more users than it is licensed for. A "user" is defined as one keyboard which is connected to a computer on which QTAwk is installed or used, regardless of whether or not the user of the keyboard is aware of the installation or use of QTAwk in the system. (7) Making Copies: You may copy any version of QTAwk for normal backup purposes, and you may give copies of the shareware version to other individuals subject to paragraph (4) above. You may not give copies of the registered version to any other person for any purpose, without explicit written permission from the copyright holder. (8) Distribution Restrictions: You may NOT distribute QTAwk other than through individual copies of the shareware version passed to friends and associates for their individual, non-commercial use. Specifically, you may not place QTAwk or any part of the QTAwk package in any user group or commercial library, or distribute it with any other product or as an incentive to purchase any other product, without express written permission from the copyright holder and you may not distribute for a fee, or in any way sell copies of QTAwk or any part of the QTAwk package. If you are a shareware disk vendor approved by the Association of Shareware Professionals (ASP), you may place QTAwk in your library without prior written permission, provided you notify the copyright holder within 15 days of doing so and provided your application has been fully approved in writing by the ASP, and is not simply submitted or awaiting review. (9) Use of QTAwk: QTAwk is a powerful program. While we have attempted to build in reasonable safeguards, if you do not use QTAwk properly you may destroy files or cause other damage to your computer software and data. You assume full responsibility for the selection and use of QTAwk to achieve your intended results. As stated below, the warranty on QTAwk is limited to replacement of a defective program diskette or manual. (10) LIMITED WARRANTY: All warranties as to this software, whether express or implied, are disclaimed, including without limitation any implied warranties of merchantability, fitness for a particular purpose, functionality or data integrity or protection are disclaimed. (11) Satisfaction Guarantee: If you are dissatisfied with a registered copy of QTAwk for any reason (whether or not you find a software error or defect), you may return the entire package at any time up to 90 days after purchase for a full refund of your original registration fee. Questions may be sent to: Pearl Boldt Quik Trim 13012 Birdale Lane Darnestown, MD 20878 CompuServe ID: 72040.434 Section 3: ===== QTAwk Upgrade History = 4.20, 4.02, 4.01 ================ QTAwk version 4.20, dated 10/10/90. This version contains two additions from the previous version: 1) The behavior of the RS pre-defined variable has been changed. It is now similar to the behavior of the FS variable. If RS is assigned a value, which when converted to a string value, is a single character in length, then that character becomes the record separator. If the string is longer in length than a single character, then it is treated as a regular expression. The string matching the regular expression is treated as a record separator. As for FS, the string value is converted to the internal regular expression form when the assignment is made. To obtain the same behavior for RS as in previous versions, use the character class operator for regular expressions. If s was the string previously used for RS, then use: RS = /[s]/; 2) Two new functions have been added: getc() --> reads a single character from the current input file. The character is returned by the function. fgetc(file) --> reads a single character from the file 'file'. The character is returned by the function. These functions allow the user to naturally obtain single characters from any file including the standard input file (which would be the keyboard if not redirected or piped). 2) Error messages now have a numerical value displayed in addition to the short error message. The error messages are listed in numerical order in the QTAwk documentation with a short explanation of the error. In some cases, an attempt has been made to provide guidance as to what may have caused the error and possible remedies. Since the error messages are generated at fixed points within QTAwk and may be caused by different reasons in different utilities during compilation or during execution on data files, it is not possible to list every possible reason for the display of the error messages. The line number within the QTAwk utility on which the error was discovered and the input data file record number are provided in the error message to provide some help to the user in attempting to ascertain the real reason for the error. ===========> QTAwk Version 4.10, dated 09/14/90, contained one addition from the previous version: 1) In previous versions, the GROUP pattern keyword could accept patterns consisting only of a regular expression constant. For version 4.10, The GROUP pattern keyword has been expanded to accept regular expression constants, string constants and variables. The variables are evaluated at the time the GROUP patterns are first utilized to scan an input record. The value is converted to string form and interpreted as a regular expression. ===========> Version 4.01 contained two additions from the previous version: 1) The command line argument, double hyphen, "--", stops further scanning of the command line for options. The double hyphen argument is not passed to the QTAwk utility in the ARGV array or counted in the ARGC variable. Since QTAwk only recognizes two command options, this has been included to be compatible with the latest Unix(tm) conventions. 2) The built-in array ENVIRON has been added. This array contains the environment strings passed to QTAwk. Changing a string in ENVIRON will have no effect on the environment strings passed in the QTAwk "system" built-in function. Environment strings are set with the PC/MS-DOS "SET" command. The strings are of the form: set name = string where the blanks on either side of the equal sign, '=', are optional and depend on the particular form used in the "SET" command. The QTAwk utility may scan the elements of ENVIRON for a particular name or string as desired.